EN FR
EN FR


Section: New Results

Computer Graphics

By-example Synthesis of Curvilinear Structured Patterns

Participants : Anass Lasram, Sylvain Lefebvre.

Many algorithms in Computer Graphics require to synthesize a pattern along a curve. This is for instance the case with line stylization, to decorate objects with elaborate patterns (chains, laces, scratches), or to synthesize curvilinear features such as mountain ridges, rivers or roads. We describe a simple yet effective method for this problem. Our method addresses the main challenge of maintaining the continuity of the pattern while following the curve. It allows some freedom to the synthesized pattern: It may locally diverge from the curve so as to allow for a more natural global result. This also lets the pattern escape areas of overlaps or fold-overs. This makes our method particularly well suited to structured, detailed patterns following complex curves. Our synthesizer copies tilted pieces of the exemplar along the curve, following its orientation. The result is optimized through a shortest path search, with dynamic programming. We speed up the process by an efficient parallel implementation. Finally, since discontinuities may always remain we propose an optional post-processing step optimally deforming neighboring pieces to smooth the transitions.

This work was presented at the Eurographics conference and published in the “Computer Graphics Forum” journal [20] .

Game Level Layout

Participant : Sylvain Lefebvre.

This work is a collaboration with the University of British Columbia. We consider a long standing problem in the video game industry: How to automatically generate game levels. Most procedural game levels tend to exhibit a random organization, reducing their interest. Instead, our approach lets a professional game designer describe the global organization of the level through a planar graph, capturing the connectivity and sequencing of different level 'rooms'. Our approach then automatically generates multiple level geometries that correspond to this high-level description.

The work will be presented at Eurographics 2014 [13] .

Figure 9. Game Level Layout
IMG/Game-level-layout.png

Dynamic Element Textures

Participant : Sylvain Lefebvre.

This work is a collaboration with Microsoft Research Asia. We consider the problem of synthesizing animated details from an example. We first define the notion of a 'textured' animation and extract details from the example animation. Intuitively, these are small scale repetitive motions found for instance for leaves in the wind or in swarms. We then propagate these motions to a coarse scale animation. Our techniques work on 1D, 2D and 3D objects.

We published this work in ACM Transactions on Graphics (SIGGRAPH proceedings) [14] .

Figure 10. Dynamic Element Textures
IMG/Dynamic-element-texture.jpg

Make It Stand: Balancing Shapes for 3D Fabrication

Participant : Sylvain Lefebvre.

This work is a collaboration with ETH Zurich. We consider the problem of balancing 3D models so that they stand in static equilibrium on their base of support after printing. We formulate the problem as the joint optimization of a voxel selection inside the model and a continuous detail preserving deformation of the outter surface.

The work has been published in ACM Transactions on Graphics (SIGGRAPH proceedings) [18] .

Clean Colors

Participants : Jean Hergel, Sylvain Lefebvre.

In this work we consider the problem of tool path planning for low-cost FDM (Fused Deposition Modeling) printers when using multiple filaments. Our method is based on three components which together reduce most of the defects found in such prints. Our algorithm first optimizes the orientation (azimuth angle) of the print so as to minimize defects. It then builds a rampart in close proximity of the model. This captures most of the strings of plastic oozing from idle extruders. Finally, we optimize for navigation paths minimizing the apparition of defects.

The work will be presented at Eurographics 2014 [22] .

Fast Fragment Sorting on the GPU

Participants : Sylvain Lefebvre, Samuel Hornus.

In this work, we build upon our result on “hashing on the GPU” from 2011 [1] to develop new techniques for sorting per-pixel lists of fragments as the latter are rasterized. We can then obtain, for each pixel, the list of surface elements visible through that pixel, sorted according to their distance to the viewpoint. The lists are obtained in a single rasterization pass instead of two for some earlier work; this is a clear win for bandwidth usage and processing time. Two important applications are the possibility to correctly visualize transparent objects and to directly display constructive-solid-geometry models without having to compute their boundary first (the boolean operations are performed on the fly, per pixel).

Our initial work has been published as a research report [25] . It has then been extended into a book chapter [24] .

The techniques developed in this work are extensively used in our 3D printing sotfware IceSL (see section  5.2 ).

Techniques for Shooting Highly Coherent Rays

Participant : Samuel Hornus.

This work explores novels ways to exploit the coherence of some set of rays used in the ray-tracing and other realistic image synthesis techniques. We propose new ways to traverse the usual data-structure for 3D indexes and leverage optimized and exact geometric predicates. Our first results give a faster ray shooting technique for pinhole camera rays and exhibit a remarkable increase in efficiency as the number of rays rises. A manuscript was submitted but not accepted to Eurographics.